.class final Lnbisdk/cv;
.super Ljava/lang/Object;


# static fields
.field private static final eo:[I

.field private static ep:[I


# instance fields
.field eA:I

.field eB:I

.field eC:I

.field private eD:Ljava/lang/Object;

.field private eE:J

.field private eF:Lnbisdk/ic;

.field private eq:I

.field private er:[I

.field private es:[I

.field private et:[I

.field private eu:Lnbisdk/hb;

.field private ev:I

.field ew:I

.field ex:I

.field private ey:[I

.field ez:[B

.field private index:I

.field private left:I

.field private mode:I


# direct methods
.method static constructor <clinit>()V
    .locals 1

    const/16 v0, 0x11

    new-array v0, v0, [I

    fill-array-data v0, :array_0

    sput-object v0, Lnbisdk/cv;->eo:[I

    const/16 v0, 0x13

    new-array v0, v0, [I

    fill-array-data v0, :array_1

    sput-object v0, Lnbisdk/cv;->ep:[I

    return-void

    nop

    :array_0
    .array-data 0x4
        0x0t 0x0t 0x0t 0x0t
        0x1t 0x0t 0x0t 0x0t
        0x3t 0x0t 0x0t 0x0t
        0x7t 0x0t 0x0t 0x0t
        0xft 0x0t 0x0t 0x0t
        0x1ft 0x0t 0x0t 0x0t
        0x3ft 0x0t 0x0t 0x0t
        0x7ft 0x0t 0x0t 0x0t
        0xfft 0x0t 0x0t 0x0t
        0xfft 0x1t 0x0t 0x0t
        0xfft 0x3t 0x0t 0x0t
        0xfft 0x7t 0x0t 0x0t
        0xfft 0xft 0x0t 0x0t
        0xfft 0x1ft 0x0t 0x0t
        0xfft 0x3ft 0x0t 0x0t
        0xfft 0x7ft 0x0t 0x0t
        0xfft 0xfft 0x0t 0x0t
    .end array-data

    :array_1
    .array-data 0x4
        0x10t 0x0t 0x0t 0x0t
        0x11t 0x0t 0x0t 0x0t
        0x12t 0x0t 0x0t 0x0t
        0x0t 0x0t 0x0t 0x0t
        0x8t 0x0t 0x0t 0x0t
        0x7t 0x0t 0x0t 0x0t
        0x9t 0x0t 0x0t 0x0t
        0x6t 0x0t 0x0t 0x0t
        0xat 0x0t 0x0t 0x0t
        0x5t 0x0t 0x0t 0x0t
        0xbt 0x0t 0x0t 0x0t
        0x4t 0x0t 0x0t 0x0t
        0xct 0x0t 0x0t 0x0t
        0x3t 0x0t 0x0t 0x0t
        0xdt 0x0t 0x0t 0x0t
        0x2t 0x0t 0x0t 0x0t
        0xet 0x0t 0x0t 0x0t
        0x1t 0x0t 0x0t 0x0t
        0xft 0x0t 0x0t 0x0t
    .end array-data
.end method

.method constructor <init>(Lnbisdk/bm;Ljava/lang/Object;I)V
    .locals 2

    const/4 v1, 0x1

    invoke-direct {p0}, Ljava/lang/Object;-><init>()V

    new-array v0, v1, [I

    iput-object v0, p0, Lnbisdk/cv;->es:[I

    new-array v0, v1, [I

    iput-object v0, p0, Lnbisdk/cv;->et:[I

    new-instance v0, Lnbisdk/hb;

    invoke-direct {v0}, Lnbisdk/hb;-><init>()V

    iput-object v0, p0, Lnbisdk/cv;->eu:Lnbisdk/hb;

    new-instance v0, Lnbisdk/ic;

    invoke-direct {v0}, Lnbisdk/ic;-><init>()V

    iput-object v0, p0, Lnbisdk/cv;->eF:Lnbisdk/ic;

    const/16 v0, 0x10e0

    new-array v0, v0, [I

    iput-object v0, p0, Lnbisdk/cv;->ey:[I

    new-array v0, p3, [B

    iput-object v0, p0, Lnbisdk/cv;->ez:[B

    iput p3, p0, Lnbisdk/cv;->eA:I

    iput-object p2, p0, Lnbisdk/cv;->eD:Ljava/lang/Object;

    const/4 v0, 0x0

    iput v0, p0, Lnbisdk/cv;->mode:I

    const/4 v0, 0x0

    invoke-virtual {p0, p1, v0}, Lnbisdk/cv;->a(Lnbisdk/bm;[J)V

    return-void
.end method


# virtual methods
.method final a(Lnbisdk/bm;I)I
    .locals 23

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v4, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/bm;->cL:I

    move v5, v0

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->ex:I

    move v6, v0

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->ew:I

    move v7, v0

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->eC:I

    move v8, v0

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v9, v0

    if-ge v8, v9, :cond_0

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v9, v0

    sub-int/2addr v9, v8

    const/4 v10, 0x1

    sub-int/2addr v9, v10

    :goto_0
    move v11, v9

    move v14, v8

    move/from16 v8, p2

    move/from16 v20, v4

    move v4, v5

    move/from16 v5, v20

    move/from16 v21, v6

    move v6, v7

    move/from16 v7, v21

    :goto_1
    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->mode:I

    move v9, v0

    packed-switch v9, :pswitch_data_0

    move v0, v7

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v6

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v4

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p1

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v6, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v4, v0

    sub-int v4, v5, v4

    int-to-long v8, v4

    add-long/2addr v6, v8

    move-wide v0, v6

    move-object/from16 v2, p1

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v5

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v14

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->eC:I

    const/4 v4, -0x2

    move-object/from16 v0, p0

    move-object/from16 v1, p1

    move v2, v4

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v4

    :goto_2
    return v4

    :cond_0
    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->eA:I

    move v9, v0

    sub-int/2addr v9, v8

    goto :goto_0

    :goto_3
    const/4 v4, 0x3

    if-ge v15, v4, :cond_2

    if-eqz v12, :cond_1

    const/4 v4, 0x0

    add-int/lit8 v5, v12, -0x1

    move-object/from16 v0, p1

    iget-object v0, v0, Lnbisdk/bm;->cJ:[B

    move-object v6, v0

    add-int/lit8 v7, v13, 0x1

    aget-byte v6, v6, v13

    and-int/lit16 v6, v6, 0xff

    shl-int/2addr v6, v15

    or-int v6, v6, v16

    add-int/lit8 v8, v15, 0x8

    move v12, v5

    move v13, v7

    move v15, v8

    move/from16 v16, v6

    move/from16 v17, v4

    goto :goto_3

    :cond_1
    move/from16 v0, v16

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v15

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v12

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p1

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v4, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v6, v0

    sub-int v6, v13, v6

    int-to-long v6, v6

    add-long/2addr v4, v6

    move-wide v0, v4

    move-object/from16 v2, p1

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v13

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v14

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->eC:I

    move-object/from16 v0, p0

    move-object/from16 v1, p1

    move/from16 v2, v17

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v4

    goto :goto_2

    :cond_2
    and-int/lit8 v4, v16, 0x7

    and-int/lit8 v5, v4, 0x1

    move v0, v5

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ev:I

    ushr-int/lit8 v4, v4, 0x1

    packed-switch v4, :pswitch_data_1

    move v4, v12

    move v5, v13

    move v6, v15

    move/from16 v7, v16

    move/from16 v8, v17

    goto/16 :goto_1

    :pswitch_0
    ushr-int/lit8 v4, v16, 0x3

    add-int/lit8 v5, v15, -0x3

    and-int/lit8 v6, v5, 0x7

    ushr-int/2addr v4, v6

    sub-int/2addr v5, v6

    const/4 v6, 0x1

    move v0, v6

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->mode:I

    move v6, v5

    move v7, v4

    move/from16 v8, v17

    move v5, v13

    move v4, v12

    goto/16 :goto_1

    :pswitch_1
    const/4 v4, 0x1

    new-array v5, v4, [I

    const/4 v4, 0x1

    new-array v6, v4, [I

    const/4 v4, 0x1

    new-array v7, v4, [[I

    const/4 v4, 0x1

    new-array v9, v4, [[I

    invoke-static {v5, v6, v7, v9}, Lnbisdk/ic;->a([I[I[[I[[I)I

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/cv;->eu:Lnbisdk/hb;

    move-object v4, v0

    const/4 v8, 0x0

    aget v5, v5, v8

    const/4 v8, 0x0

    aget v6, v6, v8

    const/4 v8, 0x0

    aget-object v7, v7, v8

    const/4 v8, 0x0

    const/4 v10, 0x0

    aget-object v9, v9, v10

    const/4 v10, 0x0

    invoke-virtual/range {v4 .. v10}, Lnbisdk/hb;->a(II[II[II)V

    ushr-int/lit8 v4, v16, 0x3

    add-int/lit8 v5, v15, -0x3

    const/4 v6, 0x6

    move v0, v6

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->mode:I

    move v6, v5

    move v7, v4

    move/from16 v8, v17

    move v5, v13

    move v4, v12

    goto/16 :goto_1

    :pswitch_2
    ushr-int/lit8 v4, v16, 0x3

    add-int/lit8 v5, v15, -0x3

    const/4 v6, 0x3

    move v0, v6

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->mode:I

    move v6, v5

    move v7, v4

    move/from16 v8, v17

    move v5, v13

    move v4, v12

    goto/16 :goto_1

    :pswitch_3
    ushr-int/lit8 v4, v16, 0x3

    add-int/lit8 v5, v15, -0x3

    const/16 v6, 0x9

    move v0, v6

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->mode:I

    const-string v6, "invalid block type"

    move-object v0, v6

    move-object/from16 v1, p1

    iput-object v0, v1, Lnbisdk/bm;->cR:Ljava/lang/String;

    move v0, v4

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v5

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v12

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p1

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v4, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v6, v0

    sub-int v6, v13, v6

    int-to-long v6, v6

    add-long/2addr v4, v6

    move-wide v0, v4

    move-object/from16 v2, p1

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v13

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v14

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->eC:I

    const/4 v4, -0x3

    move-object/from16 v0, p0

    move-object/from16 v1, p1

    move v2, v4

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v4

    goto/16 :goto_2

    :goto_4
    :pswitch_4
    const/16 v9, 0x20

    if-ge v6, v9, :cond_4

    if-eqz v4, :cond_3

    const/4 v8, 0x0

    add-int/lit8 v4, v4, -0x1

    move-object/from16 v0, p1

    iget-object v0, v0, Lnbisdk/bm;->cJ:[B

    move-object v9, v0

    add-int/lit8 v10, v5, 0x1

    aget-byte v5, v9, v5

    and-int/lit16 v5, v5, 0xff

    shl-int/2addr v5, v6

    or-int/2addr v5, v7

    add-int/lit8 v6, v6, 0x8

    move v7, v5

    move v5, v10

    goto :goto_4

    :cond_3
    move v0, v7

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v6

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v4

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p1

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v6, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v4, v0

    sub-int v4, v5, v4

    int-to-long v9, v4

    add-long/2addr v6, v9

    move-wide v0, v6

    move-object/from16 v2, p1

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v5

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v14

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->eC:I

    move-object/from16 v0, p0

    move-object/from16 v1, p1

    move v2, v8

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v4

    goto/16 :goto_2

    :cond_4
    xor-int/lit8 v9, v7, -0x1

    ushr-int/lit8 v9, v9, 0x10

    const v10, 0xffff

    and-int/2addr v9, v10

    const v10, 0xffff

    and-int/2addr v10, v7

    if-eq v9, v10, :cond_5

    const/16 v8, 0x9

    move v0, v8

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->mode:I

    const-string v8, "invalid stored block lengths"

    move-object v0, v8

    move-object/from16 v1, p1

    iput-object v0, v1, Lnbisdk/bm;->cR:Ljava/lang/String;

    move v0, v7

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v6

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v4

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p1

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v6, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v4, v0

    sub-int v4, v5, v4

    int-to-long v8, v4

    add-long/2addr v6, v8

    move-wide v0, v6

    move-object/from16 v2, p1

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v5

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v14

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->eC:I

    const/4 v4, -0x3

    move-object/from16 v0, p0

    move-object/from16 v1, p1

    move v2, v4

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v4

    goto/16 :goto_2

    :cond_5
    const v6, 0xffff

    and-int/2addr v6, v7

    move v0, v6

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->left:I

    const/4 v6, 0x0

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->left:I

    move v7, v0

    if-eqz v7, :cond_6

    const/4 v7, 0x2

    :goto_5
    move v0, v7

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->mode:I

    move v7, v6

    goto/16 :goto_1

    :cond_6
    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->ev:I

    move v7, v0

    if-eqz v7, :cond_7

    const/4 v7, 0x7

    goto :goto_5

    :cond_7
    const/4 v7, 0x0

    goto :goto_5

    :pswitch_5
    if-nez v4, :cond_8

    move v0, v7

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v6

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v4

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p1

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v6, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v4, v0

    sub-int v4, v5, v4

    int-to-long v9, v4

    add-long/2addr v6, v9

    move-wide v0, v6

    move-object/from16 v2, p1

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v5

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v14

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->eC:I

    move-object/from16 v0, p0

    move-object/from16 v1, p1

    move v2, v8

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v4

    goto/16 :goto_2

    :cond_8
    if-nez v11, :cond_32

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->eA:I

    move v9, v0

    if-ne v14, v9, :cond_31

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v9, v0

    if-eqz v9, :cond_31

    const/4 v9, 0x0

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v10, v0

    if-lez v10, :cond_9

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v10, v0

    const/4 v11, 0x1

    sub-int/2addr v10, v11

    :goto_6
    move/from16 v20, v10

    move v10, v9

    move/from16 v9, v20

    :goto_7
    if-nez v9, :cond_c

    move v0, v10

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->eC:I

    move-object/from16 v0, p0

    move-object/from16 v1, p1

    move v2, v8

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v8

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->eC:I

    move v9, v0

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v10, v0

    if-ge v9, v10, :cond_a

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v10, v0

    sub-int/2addr v10, v9

    const/4 v11, 0x1

    sub-int/2addr v10, v11

    :goto_8
    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->eA:I

    move v11, v0

    if-ne v9, v11, :cond_30

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v11, v0

    if-eqz v11, :cond_30

    const/4 v9, 0x0

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v10, v0

    if-lez v10, :cond_b

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v10, v0

    const/4 v11, 0x1

    sub-int/2addr v10, v11

    :goto_9
    move/from16 v20, v10

    move v10, v9

    move/from16 v9, v20

    :goto_a
    if-nez v9, :cond_c

    move v0, v7

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v6

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v4

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p1

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v6, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v4, v0

    sub-int v4, v5, v4

    int-to-long v11, v4

    add-long/2addr v6, v11

    move-wide v0, v6

    move-object/from16 v2, p1

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v5

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v10

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->eC:I

    move-object/from16 v0, p0

    move-object/from16 v1, p1

    move v2, v8

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v4

    goto/16 :goto_2

    :cond_9
    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->eA:I

    move v10, v0

    goto/16 :goto_6

    :cond_a
    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->eA:I

    move v10, v0

    sub-int/2addr v10, v9

    goto :goto_8

    :cond_b
    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->eA:I

    move v10, v0

    goto :goto_9

    :cond_c
    move v8, v9

    move v9, v10

    :goto_b
    const/4 v10, 0x0

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->left:I

    move v11, v0

    if-le v11, v4, :cond_d

    move v11, v4

    :cond_d
    if-le v11, v8, :cond_e

    move v11, v8

    :cond_e
    move-object/from16 v0, p1

    iget-object v0, v0, Lnbisdk/bm;->cJ:[B

    move-object v12, v0

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/cv;->ez:[B

    move-object v13, v0

    invoke-static {v12, v5, v13, v9, v11}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V

    add-int/2addr v5, v11

    sub-int/2addr v4, v11

    add-int/2addr v9, v11

    sub-int/2addr v8, v11

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->left:I

    move v12, v0

    sub-int v11, v12, v11

    move v0, v11

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->left:I

    if-nez v11, :cond_2f

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->ev:I

    move v11, v0

    if-eqz v11, :cond_f

    const/4 v11, 0x7

    :goto_c
    move v0, v11

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->mode:I

    move v11, v8

    move v14, v9

    move v8, v10

    goto/16 :goto_1

    :cond_f
    const/4 v11, 0x0

    goto :goto_c

    :goto_d
    :pswitch_6
    const/16 v9, 0xe

    if-ge v6, v9, :cond_11

    if-eqz v4, :cond_10

    const/4 v8, 0x0

    add-int/lit8 v4, v4, -0x1

    move-object/from16 v0, p1

    iget-object v0, v0, Lnbisdk/bm;->cJ:[B

    move-object v9, v0

    add-int/lit8 v10, v5, 0x1

    aget-byte v5, v9, v5

    and-int/lit16 v5, v5, 0xff

    shl-int/2addr v5, v6

    or-int/2addr v5, v7

    add-int/lit8 v6, v6, 0x8

    move v7, v5

    move v5, v10

    goto :goto_d

    :cond_10
    move v0, v7

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v6

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v4

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p1

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v6, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v4, v0

    sub-int v4, v5, v4

    int-to-long v9, v4

    add-long/2addr v6, v9

    move-wide v0, v6

    move-object/from16 v2, p1

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v5

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v14

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->eC:I

    move-object/from16 v0, p0

    move-object/from16 v1, p1

    move v2, v8

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v4

    goto/16 :goto_2

    :cond_11
    and-int/lit16 v9, v7, 0x3fff

    move v0, v9

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->eq:I

    and-int/lit8 v10, v9, 0x1f

    const/16 v11, 0x1d

    if-gt v10, v11, :cond_12

    shr-int/lit8 v10, v9, 0x5

    and-int/lit8 v10, v10, 0x1f

    const/16 v11, 0x1d

    if-le v10, v11, :cond_13

    :cond_12
    const/16 v8, 0x9

    move v0, v8

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->mode:I

    const-string v8, "too many length or distance symbols"

    move-object v0, v8

    move-object/from16 v1, p1

    iput-object v0, v1, Lnbisdk/bm;->cR:Ljava/lang/String;

    move v0, v7

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v6

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v4

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p1

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v6, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v4, v0

    sub-int v4, v5, v4

    int-to-long v8, v4

    add-long/2addr v6, v8

    move-wide v0, v6

    move-object/from16 v2, p1

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v5

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v14

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->eC:I

    const/4 v4, -0x3

    move-object/from16 v0, p0

    move-object/from16 v1, p1

    move v2, v4

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v4

    goto/16 :goto_2

    :cond_13
    and-int/lit8 v10, v9, 0x1f

    add-int/lit16 v10, v10, 0x102

    shr-int/lit8 v9, v9, 0x5

    and-int/lit8 v9, v9, 0x1f

    add-int/2addr v9, v10

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/cv;->er:[I

    move-object v10, v0

    if-eqz v10, :cond_14

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/cv;->er:[I

    move-object v10, v0

    array-length v10, v10

    if-ge v10, v9, :cond_16

    :cond_14
    new-array v9, v9, [I

    move-object v0, v9

    move-object/from16 v1, p0

    iput-object v0, v1, Lnbisdk/cv;->er:[I

    :cond_15
    ushr-int/lit8 v7, v7, 0xe

    add-int/lit8 v6, v6, -0xe

    const/4 v9, 0x0

    move v0, v9

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->index:I

    const/4 v9, 0x4

    move v0, v9

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->mode:I

    :pswitch_7
    move v10, v4

    move v11, v5

    move v12, v6

    move v13, v7

    move v15, v8

    :goto_e
    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->index:I

    move v4, v0

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->eq:I

    move v5, v0

    ushr-int/lit8 v5, v5, 0xa

    add-int/lit8 v5, v5, 0x4

    if-ge v4, v5, :cond_19

    move v4, v10

    move v5, v11

    move v6, v12

    move v7, v13

    move v8, v15

    :goto_f
    const/4 v9, 0x3

    if-ge v6, v9, :cond_18

    if-eqz v4, :cond_17

    const/4 v8, 0x0

    add-int/lit8 v4, v4, -0x1

    move-object/from16 v0, p1

    iget-object v0, v0, Lnbisdk/bm;->cJ:[B

    move-object v9, v0

    add-int/lit8 v10, v5, 0x1

    aget-byte v5, v9, v5

    and-int/lit16 v5, v5, 0xff

    shl-int/2addr v5, v6

    or-int/2addr v5, v7

    add-int/lit8 v6, v6, 0x8

    move v7, v5

    move v5, v10

    goto :goto_f

    :cond_16
    const/4 v10, 0x0

    :goto_10
    if-ge v10, v9, :cond_15

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/cv;->er:[I

    move-object v11, v0

    const/4 v12, 0x0

    aput v12, v11, v10

    add-int/lit8 v10, v10, 0x1

    goto :goto_10

    :cond_17
    move v0, v7

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v6

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v4

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p1

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v6, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v4, v0

    sub-int v4, v5, v4

    int-to-long v9, v4

    add-long/2addr v6, v9

    move-wide v0, v6

    move-object/from16 v2, p1

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v5

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v14

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->eC:I

    move-object/from16 v0, p0

    move-object/from16 v1, p1

    move v2, v8

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v4

    goto/16 :goto_2

    :cond_18
    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/cv;->er:[I

    move-object v9, v0

    sget-object v10, Lnbisdk/cv;->ep:[I

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->index:I

    move v11, v0

    add-int/lit8 v12, v11, 0x1

    move v0, v12

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->index:I

    aget v10, v10, v11

    and-int/lit8 v11, v7, 0x7

    aput v11, v9, v10

    ushr-int/lit8 v7, v7, 0x3

    add-int/lit8 v6, v6, -0x3

    move v10, v4

    move v11, v5

    move v12, v6

    move v13, v7

    move v15, v8

    goto/16 :goto_e

    :cond_19
    :goto_11
    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->index:I

    move v4, v0

    const/16 v5, 0x13

    if-ge v4, v5, :cond_1a

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/cv;->er:[I

    move-object v4, v0

    sget-object v5, Lnbisdk/cv;->ep:[I

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->index:I

    move v6, v0

    add-int/lit8 v7, v6, 0x1

    move v0, v7

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->index:I

    aget v5, v5, v6

    const/4 v6, 0x0

    aput v6, v4, v5

    goto :goto_11

    :cond_1a
    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/cv;->es:[I

    move-object v4, v0

    const/4 v5, 0x0

    const/4 v6, 0x7

    aput v6, v4, v5

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/cv;->eF:Lnbisdk/ic;

    move-object v4, v0

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/cv;->er:[I

    move-object v5, v0

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/cv;->es:[I

    move-object v6, v0

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/cv;->et:[I

    move-object v7, v0

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/cv;->ey:[I

    move-object v8, v0

    move-object/from16 v9, p1

    invoke-virtual/range {v4 .. v9}, Lnbisdk/ic;->a([I[I[I[ILnbisdk/bm;)I

    move-result v4

    if-eqz v4, :cond_1c

    const/4 v5, -0x3

    if-ne v4, v5, :cond_1b

    const/4 v5, 0x0

    move-object v0, v5

    move-object/from16 v1, p0

    iput-object v0, v1, Lnbisdk/cv;->er:[I

    const/16 v5, 0x9

    move v0, v5

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->mode:I

    :cond_1b
    move v0, v13

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v12

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v10

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p1

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v5, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v7, v0

    sub-int v7, v11, v7

    int-to-long v7, v7

    add-long/2addr v5, v7

    move-wide v0, v5

    move-object/from16 v2, p1

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v11

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v14

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->eC:I

    move-object/from16 v0, p0

    move-object/from16 v1, p1

    move v2, v4

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v4

    goto/16 :goto_2

    :cond_1c
    const/4 v4, 0x0

    move v0, v4

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->index:I

    const/4 v4, 0x5

    move v0, v4

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->mode:I

    move/from16 v16, v11

    move/from16 v17, v12

    move/from16 v18, v13

    move/from16 v19, v15

    move v15, v10

    :goto_12
    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->eq:I

    move v4, v0

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->index:I

    move v5, v0

    and-int/lit8 v6, v4, 0x1f

    add-int/lit16 v6, v6, 0x102

    shr-int/lit8 v4, v4, 0x5

    and-int/lit8 v4, v4, 0x1f

    add-int/2addr v4, v6

    if-ge v5, v4, :cond_27

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/cv;->es:[I

    move-object v4, v0

    const/4 v5, 0x0

    aget v4, v4, v5

    move v5, v15

    move/from16 v6, v16

    move/from16 v7, v17

    move/from16 v8, v18

    move/from16 v9, v19

    :goto_13
    if-ge v7, v4, :cond_1e

    if-eqz v5, :cond_1d

    const/4 v9, 0x0

    add-int/lit8 v5, v5, -0x1

    move-object/from16 v0, p1

    iget-object v0, v0, Lnbisdk/bm;->cJ:[B

    move-object v10, v0

    add-int/lit8 v11, v6, 0x1

    aget-byte v6, v10, v6

    and-int/lit16 v6, v6, 0xff

    shl-int/2addr v6, v7

    or-int/2addr v6, v8

    add-int/lit8 v7, v7, 0x8

    move v8, v6

    move v6, v11

    goto :goto_13

    :cond_1d
    move v0, v8

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v7

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v5

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p1

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v4, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v7, v0

    sub-int v7, v6, v7

    int-to-long v7, v7

    add-long/2addr v4, v7

    move-wide v0, v4

    move-object/from16 v2, p1

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v6

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v14

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->eC:I

    move-object/from16 v0, p0

    move-object/from16 v1, p1

    move v2, v9

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v4

    goto/16 :goto_2

    :cond_1e
    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/cv;->ey:[I

    move-object v10, v0

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/cv;->et:[I

    move-object v11, v0

    const/4 v12, 0x0

    aget v11, v11, v12

    sget-object v12, Lnbisdk/cv;->eo:[I

    aget v4, v12, v4

    and-int/2addr v4, v8

    add-int/2addr v4, v11

    mul-int/lit8 v4, v4, 0x3

    add-int/lit8 v4, v4, 0x1

    aget v4, v10, v4

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/cv;->ey:[I

    move-object v10, v0

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/cv;->et:[I

    move-object v11, v0

    const/4 v12, 0x0

    aget v11, v11, v12

    sget-object v12, Lnbisdk/cv;->eo:[I

    aget v12, v12, v4

    and-int/2addr v12, v8

    add-int/2addr v11, v12

    mul-int/lit8 v11, v11, 0x3

    add-int/lit8 v11, v11, 0x2

    aget v10, v10, v11

    const/16 v11, 0x10

    if-ge v10, v11, :cond_1f

    ushr-int/2addr v8, v4

    sub-int v4, v7, v4

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/cv;->er:[I

    move-object v7, v0

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->index:I

    move v11, v0

    add-int/lit8 v12, v11, 0x1

    move v0, v12

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->index:I

    aput v10, v7, v11

    move v15, v5

    move/from16 v16, v6

    move/from16 v17, v4

    move/from16 v18, v8

    move/from16 v19, v9

    goto/16 :goto_12

    :cond_1f
    const/16 v11, 0x12

    if-ne v10, v11, :cond_20

    const/4 v11, 0x7

    :goto_14
    const/16 v12, 0x12

    if-ne v10, v12, :cond_21

    const/16 v12, 0xb

    :goto_15
    add-int v13, v4, v11

    if-ge v7, v13, :cond_23

    if-eqz v5, :cond_22

    const/4 v9, 0x0

    add-int/lit8 v5, v5, -0x1

    move-object/from16 v0, p1

    iget-object v0, v0, Lnbisdk/bm;->cJ:[B

    move-object v13, v0

    add-int/lit8 v15, v6, 0x1

    aget-byte v6, v13, v6

    and-int/lit16 v6, v6, 0xff

    shl-int/2addr v6, v7

    or-int/2addr v6, v8

    add-int/lit8 v7, v7, 0x8

    move v8, v6

    move v6, v15

    goto :goto_15

    :cond_20
    const/16 v11, 0xe

    sub-int v11, v10, v11

    goto :goto_14

    :cond_21
    const/4 v12, 0x3

    goto :goto_15

    :cond_22
    move v0, v8

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v7

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v5

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p1

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v4, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v7, v0

    sub-int v7, v6, v7

    int-to-long v7, v7

    add-long/2addr v4, v7

    move-wide v0, v4

    move-object/from16 v2, p1

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v6

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v14

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->eC:I

    move-object/from16 v0, p0

    move-object/from16 v1, p1

    move v2, v9

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v4

    goto/16 :goto_2

    :cond_23
    ushr-int/2addr v8, v4

    sub-int v4, v7, v4

    sget-object v7, Lnbisdk/cv;->eo:[I

    aget v7, v7, v11

    and-int/2addr v7, v8

    add-int/2addr v7, v12

    ushr-int/2addr v8, v11

    sub-int/2addr v4, v11

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->index:I

    move v11, v0

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->eq:I

    move v12, v0

    add-int v13, v11, v7

    and-int/lit8 v15, v12, 0x1f

    add-int/lit16 v15, v15, 0x102

    shr-int/lit8 v12, v12, 0x5

    and-int/lit8 v12, v12, 0x1f

    add-int/2addr v12, v15

    if-gt v13, v12, :cond_24

    const/16 v12, 0x10

    if-ne v10, v12, :cond_25

    if-gtz v11, :cond_25

    :cond_24
    const/4 v7, 0x0

    move-object v0, v7

    move-object/from16 v1, p0

    iput-object v0, v1, Lnbisdk/cv;->er:[I

    const/16 v7, 0x9

    move v0, v7

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->mode:I

    const-string v7, "invalid bit length repeat"

    move-object v0, v7

    move-object/from16 v1, p1

    iput-object v0, v1, Lnbisdk/bm;->cR:Ljava/lang/String;

    move v0, v8

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v4

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v5

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p1

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v4, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v7, v0

    sub-int v7, v6, v7

    int-to-long v7, v7

    add-long/2addr v4, v7

    move-wide v0, v4

    move-object/from16 v2, p1

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v6

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v14

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->eC:I

    const/4 v4, -0x3

    move-object/from16 v0, p0

    move-object/from16 v1, p1

    move v2, v4

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v4

    goto/16 :goto_2

    :cond_25
    const/16 v12, 0x10

    if-ne v10, v12, :cond_26

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/cv;->er:[I

    move-object v10, v0

    const/4 v12, 0x1

    sub-int v12, v11, v12

    aget v10, v10, v12

    :goto_16
    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/cv;->er:[I

    move-object v12, v0

    add-int/lit8 v13, v11, 0x1

    aput v10, v12, v11

    add-int/lit8 v7, v7, -0x1

    if-nez v7, :cond_2e

    move v0, v13

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->index:I

    move v15, v5

    move/from16 v16, v6

    move/from16 v17, v4

    move/from16 v18, v8

    move/from16 v19, v9

    goto/16 :goto_12

    :cond_26
    const/4 v10, 0x0

    goto :goto_16

    :cond_27
    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/cv;->et:[I

    move-object v4, v0

    const/4 v5, 0x0

    const/4 v6, -0x1

    aput v6, v4, v5

    const/4 v4, 0x1

    new-array v8, v4, [I

    const/4 v4, 0x1

    new-array v9, v4, [I

    const/4 v4, 0x1

    new-array v10, v4, [I

    const/4 v4, 0x1

    new-array v11, v4, [I

    const/4 v4, 0x0

    const/16 v5, 0x9

    aput v5, v8, v4

    const/4 v4, 0x0

    const/4 v5, 0x6

    aput v5, v9, v4

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->eq:I

    move v6, v0

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/cv;->eF:Lnbisdk/ic;

    move-object v4, v0

    and-int/lit8 v5, v6, 0x1f

    add-int/lit16 v5, v5, 0x101

    shr-int/lit8 v6, v6, 0x5

    and-int/lit8 v6, v6, 0x1f

    add-int/lit8 v6, v6, 0x1

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/cv;->er:[I

    move-object v7, v0

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/cv;->ey:[I

    move-object v12, v0

    move-object/from16 v13, p1

    invoke-virtual/range {v4 .. v13}, Lnbisdk/ic;->a(II[I[I[I[I[I[ILnbisdk/bm;)I

    move-result v4

    if-eqz v4, :cond_29

    const/4 v5, -0x3

    if-ne v4, v5, :cond_28

    const/4 v5, 0x0

    move-object v0, v5

    move-object/from16 v1, p0

    iput-object v0, v1, Lnbisdk/cv;->er:[I

    const/16 v5, 0x9

    move v0, v5

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->mode:I

    :cond_28
    move/from16 v0, v18

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ex:I

    move/from16 v0, v17

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v15

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p1

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v5, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v7, v0

    sub-int v7, v16, v7

    int-to-long v7, v7

    add-long/2addr v5, v7

    move-wide v0, v5

    move-object/from16 v2, p1

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move/from16 v0, v16

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v14

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->eC:I

    move-object/from16 v0, p0

    move-object/from16 v1, p1

    move v2, v4

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v4

    goto/16 :goto_2

    :cond_29
    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/cv;->eu:Lnbisdk/hb;

    move-object v4, v0

    const/4 v5, 0x0

    aget v5, v8, v5

    const/4 v6, 0x0

    aget v6, v9, v6

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/cv;->ey:[I

    move-object v7, v0

    const/4 v8, 0x0

    aget v8, v10, v8

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/cv;->ey:[I

    move-object v9, v0

    const/4 v10, 0x0

    aget v10, v11, v10

    invoke-virtual/range {v4 .. v10}, Lnbisdk/hb;->a(II[II[II)V

    const/4 v4, 0x6

    move v0, v4

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->mode:I

    move v4, v15

    move/from16 v5, v16

    move/from16 v6, v17

    move/from16 v7, v18

    move/from16 v8, v19

    :pswitch_8
    move v0, v7

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v6

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v4

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p1

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v6, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v4, v0

    sub-int v4, v5, v4

    int-to-long v9, v4

    add-long/2addr v6, v9

    move-wide v0, v6

    move-object/from16 v2, p1

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v5

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v14

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->eC:I

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/cv;->eu:Lnbisdk/hb;

    move-object v4, v0

    move-object v0, v4

    move-object/from16 v1, p0

    move-object/from16 v2, p1

    move v3, v8

    invoke-virtual {v0, v1, v2, v3}, Lnbisdk/hb;->a(Lnbisdk/cv;Lnbisdk/bm;I)I

    move-result v4

    const/4 v5, 0x1

    if-eq v4, v5, :cond_2a

    move-object/from16 v0, p0

    move-object/from16 v1, p1

    move v2, v4

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v4

    goto/16 :goto_2

    :cond_2a
    const/4 v4, 0x0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v5, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/bm;->cL:I

    move v6, v0

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->ex:I

    move v7, v0

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->ew:I

    move v8, v0

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->eC:I

    move v9, v0

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v10, v0

    if-ge v9, v10, :cond_2b

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v10, v0

    sub-int/2addr v10, v9

    const/4 v11, 0x1

    sub-int/2addr v10, v11

    :goto_17
    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->ev:I

    move v11, v0

    if-nez v11, :cond_2c

    const/4 v11, 0x0

    move v0, v11

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->mode:I

    move v11, v10

    move v14, v9

    move/from16 v20, v6

    move v6, v8

    move v8, v4

    move/from16 v4, v20

    goto/16 :goto_1

    :cond_2b
    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->eA:I

    move v10, v0

    sub-int/2addr v10, v9

    goto :goto_17

    :cond_2c
    const/4 v10, 0x7

    move v0, v10

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->mode:I

    move/from16 v20, v9

    move v9, v4

    move/from16 v4, v20

    move/from16 v21, v5

    move v5, v6

    move/from16 v6, v21

    move/from16 v22, v7

    move v7, v8

    move/from16 v8, v22

    :goto_18
    move v0, v4

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->eC:I

    move-object/from16 v0, p0

    move-object/from16 v1, p1

    move v2, v9

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v4

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->eC:I

    move v9, v0

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v10, v0

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/cv;->eC:I

    move v11, v0

    if-eq v10, v11, :cond_2d

    move v0, v8

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v7

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v5

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p1

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v7, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v5, v0

    sub-int v5, v6, v5

    int-to-long v10, v5

    add-long/2addr v7, v10

    move-wide v0, v7

    move-object/from16 v2, p1

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v6

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v9

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->eC:I

    move-object/from16 v0, p0

    move-object/from16 v1, p1

    move v2, v4

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v4

    goto/16 :goto_2

    :cond_2d
    const/16 v4, 0x8

    move v0, v4

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->mode:I

    move v4, v9

    :goto_19
    move v0, v8

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v7

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v5

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p1

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v7, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v5, v0

    sub-int v5, v6, v5

    int-to-long v9, v5

    add-long/2addr v7, v9

    move-wide v0, v7

    move-object/from16 v2, p1

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v6

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v4

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->eC:I

    const/4 v4, 0x1

    move-object/from16 v0, p0

    move-object/from16 v1, p1

    move v2, v4

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v4

    goto/16 :goto_2

    :pswitch_9
    move v0, v7

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v6

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v4

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p1

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v6, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v4, v0

    sub-int v4, v5, v4

    int-to-long v8, v4

    add-long/2addr v6, v8

    move-wide v0, v6

    move-object/from16 v2, p1

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v5

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v14

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/cv;->eC:I

    const/4 v4, -0x3

    move-object/from16 v0, p0

    move-object/from16 v1, p1

    move v2, v4

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v4

    goto/16 :goto_2

    :cond_2e
    move v11, v13

    goto/16 :goto_16

    :cond_2f
    move v11, v8

    move v14, v9

    move v8, v10

    goto/16 :goto_1

    :cond_30
    move/from16 v20, v10

    move v10, v9

    move/from16 v9, v20

    goto/16 :goto_a

    :cond_31
    move v9, v11

    move v10, v14

    goto/16 :goto_7

    :cond_32
    move v8, v11

    move v9, v14

    goto/16 :goto_b

    :pswitch_a
    move v15, v4

    move/from16 v16, v5

    move/from16 v17, v6

    move/from16 v18, v7

    move/from16 v19, v8

    goto/16 :goto_12

    :pswitch_b
    move v9, v8

    move v8, v7

    move v7, v6

    move v6, v5

    move v5, v4

    move v4, v14

    goto/16 :goto_18

    :pswitch_c
    move v8, v7

    move v7, v6

    move v6, v5

    move v5, v4

    move v4, v14

    goto/16 :goto_19

    :pswitch_d
    move v12, v4

    move v13, v5

    move v15, v6

    move/from16 v16, v7

    move/from16 v17, v8

    goto/16 :goto_3

    nop

    :pswitch_data_0
    .packed-switch 0x0
        :pswitch_d
        :pswitch_4
        :pswitch_5
        :pswitch_6
        :pswitch_7
        :pswitch_a
        :pswitch_8
        :pswitch_b
        :pswitch_c
        :pswitch_9
    .end packed-switch

    :pswitch_data_1
    .packed-switch 0x0
        :pswitch_0
        :pswitch_1
        :pswitch_2
        :pswitch_3
    .end packed-switch
.end method

.method final a(Lnbisdk/bm;)V
    .locals 1

    const/4 v0, 0x0

    invoke-virtual {p0, p1, v0}, Lnbisdk/cv;->a(Lnbisdk/bm;[J)V

    iput-object v0, p0, Lnbisdk/cv;->ez:[B

    iput-object v0, p0, Lnbisdk/cv;->ey:[I

    return-void
.end method

.method final a(Lnbisdk/bm;[J)V
    .locals 4

    const/4 v3, 0x0

    if-eqz p2, :cond_0

    iget-wide v0, p0, Lnbisdk/cv;->eE:J

    aput-wide v0, p2, v3

    :cond_0
    iput v3, p0, Lnbisdk/cv;->mode:I

    iput v3, p0, Lnbisdk/cv;->ew:I

    iput v3, p0, Lnbisdk/cv;->ex:I

    iput v3, p0, Lnbisdk/cv;->eC:I

    iput v3, p0, Lnbisdk/cv;->eB:I

    iget-object v0, p0, Lnbisdk/cv;->eD:Ljava/lang/Object;

    if-eqz v0, :cond_1

    const-wide/16 v0, 0x0

    const/4 v2, 0x0

    invoke-static {v0, v1, v2, v3, v3}, Lnbisdk/po;->a(J[BII)J

    move-result-wide v0

    iput-wide v0, p0, Lnbisdk/cv;->eE:J

    :cond_1
    return-void
.end method

.method final b(Lnbisdk/bm;I)I
    .locals 11

    const/4 v9, -0x5

    const/4 v8, 0x0

    iget v0, p1, Lnbisdk/bm;->cO:I

    iget v1, p0, Lnbisdk/cv;->eB:I

    iget v2, p0, Lnbisdk/cv;->eC:I

    if-gt v1, v2, :cond_5

    iget v2, p0, Lnbisdk/cv;->eC:I

    :goto_0
    sub-int/2addr v2, v1

    iget v3, p1, Lnbisdk/bm;->cP:I

    if-le v2, v3, :cond_0

    iget v2, p1, Lnbisdk/bm;->cP:I

    :cond_0
    if-eqz v2, :cond_8

    if-ne p2, v9, :cond_8

    move v3, v8

    :goto_1
    iget v4, p1, Lnbisdk/bm;->cP:I

    sub-int/2addr v4, v2

    iput v4, p1, Lnbisdk/bm;->cP:I

    iget-wide v4, p1, Lnbisdk/bm;->cQ:J

    int-to-long v6, v2

    add-long/2addr v4, v6

    iput-wide v4, p1, Lnbisdk/bm;->cQ:J

    iget-object v4, p0, Lnbisdk/cv;->eD:Ljava/lang/Object;

    if-eqz v4, :cond_1

    iget-wide v4, p0, Lnbisdk/cv;->eE:J

    iget-object v6, p0, Lnbisdk/cv;->ez:[B

    invoke-static {v4, v5, v6, v1, v2}, Lnbisdk/po;->a(J[BII)J

    move-result-wide v4

    iput-wide v4, p0, Lnbisdk/cv;->eE:J

    :cond_1
    iget-object v4, p0, Lnbisdk/cv;->ez:[B

    iget-object v5, p1, Lnbisdk/bm;->cN:[B

    invoke-static {v4, v1, v5, v0, v2}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V

    add-int/2addr v0, v2

    add-int/2addr v1, v2

    iget v2, p0, Lnbisdk/cv;->eA:I

    if-ne v1, v2, :cond_7

    iget v1, p0, Lnbisdk/cv;->eC:I

    iget v2, p0, Lnbisdk/cv;->eA:I

    if-ne v1, v2, :cond_2

    iput v8, p0, Lnbisdk/cv;->eC:I

    :cond_2
    iget v1, p0, Lnbisdk/cv;->eC:I

    iget v2, p1, Lnbisdk/bm;->cP:I

    if-le v1, v2, :cond_3

    iget v1, p1, Lnbisdk/bm;->cP:I

    :cond_3
    if-eqz v1, :cond_6

    if-ne v3, v9, :cond_6

    move v2, v8

    :goto_2
    iget v3, p1, Lnbisdk/bm;->cP:I

    sub-int/2addr v3, v1

    iput v3, p1, Lnbisdk/bm;->cP:I

    iget-wide v3, p1, Lnbisdk/bm;->cQ:J

    int-to-long v5, v1

    add-long/2addr v3, v5

    iput-wide v3, p1, Lnbisdk/bm;->cQ:J

    iget-object v3, p0, Lnbisdk/cv;->eD:Ljava/lang/Object;

    if-eqz v3, :cond_4

    iget-wide v3, p0, Lnbisdk/cv;->eE:J

    iget-object v5, p0, Lnbisdk/cv;->ez:[B

    invoke-static {v3, v4, v5, v8, v1}, Lnbisdk/po;->a(J[BII)J

    move-result-wide v3

    iput-wide v3, p0, Lnbisdk/cv;->eE:J

    :cond_4
    iget-object v3, p0, Lnbisdk/cv;->ez:[B

    iget-object v4, p1, Lnbisdk/bm;->cN:[B

    invoke-static {v3, v8, v4, v0, v1}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V

    add-int/2addr v0, v1

    add-int/lit8 v1, v1, 0x0

    move v10, v1

    move v1, v0

    move v0, v10

    :goto_3
    iput v1, p1, Lnbisdk/bm;->cO:I

    iput v0, p0, Lnbisdk/cv;->eB:I

    return v2

    :cond_5
    iget v2, p0, Lnbisdk/cv;->eA:I

    goto :goto_0

    :cond_6
    move v2, v3

    goto :goto_2

    :cond_7
    move v2, v3

    move v10, v0

    move v0, v1

    move v1, v10

    goto :goto_3

    :cond_8
    move v3, p2

    goto :goto_1
.end method
